package com.example.administrator.myapplication.base;

import android.content.Intent;
import android.os.Bundle;
import android.support.annotation.LayoutRes;
import android.support.annotation.Nullable;
import android.support.v7.app.AppCompatActivity;
import android.support.v7.widget.Toolbar;

import com.example.administrator.myapplication.R;
import com.example.administrator.myapplication.utils.SnackbarUtil;

import butterknife.BindView;
import butterknife.ButterKnife;


/**
 * 说明：基类
 * 作者： 阳2012; 创建于： 2017/5/4 23:56
 */
public abstract class BaseActivity extends AppCompatActivity {
    @Nullable
    @BindView(R.id.toolbar)
    protected Toolbar toolbar;

    @Override
    protected void onCreate(@Nullable Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(getContentView());
        parseIntent(getIntent());
        initView();
    }

    @Override
    public void setContentView(@LayoutRes int layoutResID) {
        super.setContentView(layoutResID);
        ButterKnife.bind(this);
    }

    /**
     * 说明：获取布局id
     * 作者： 阳2012; 创建于： 2017/5/4 23:55
     */
    public abstract int getContentView();

    /**
     * 说明：解析意图
     * 作者： 阳2012; 创建于： 2017/5/4 23:55
     */
    public abstract void parseIntent(Intent intent);

    /**
     * 说明：初始化view
     * 作者： 阳2012; 创建于： 2017/5/4 23:55
     */
    public abstract void initView();

    /**
     * 作者　　: yang
     * *22 11:10
     * <p>
     * 方法功能： Snackbar 显示错误信息
     */
    public void httpError(String errString) {
        SnackbarUtil.showLong(this, errString, SnackbarUtil.Error).show();
    }



    /**
     * 说明：显示错误信息
     * 作者： 阳2012; 创建于： 2017/5/6 21:15
     */
    public void showErrorMessage(String result) {
        if (result != null) {
            SnackbarUtil.showLong(this, result, SnackbarUtil.Error).show();
        }
    }

    /**
     * 说明：显示错误信息
     * 作者： 阳2012; 创建于： 2017/5/6 21:15
     */
    public void showInfo(String result) {
        if (result != null) {
            SnackbarUtil.showLong(this, result, SnackbarUtil.Info).show();
        }
    }

    /**
     * 说明：显示警告信息
     * 作者： 阳2012; 创建于： 2017/5/6 21:15
     */
    public void showWarningMessage(String result) {
        if (result != null) {
            SnackbarUtil.showLong(this, result, SnackbarUtil.Warning).show();
        }
    }

}
